/*********************************************************
          File Name:13.2.cpp
          Author: Abby Cin
          Mail: abbytsing@gmail.com
          Created Time: Wed 16 Sep 2015 08:15:24 PM CST
**********************************************************/

#include <iostream>

// YCM: 'copy constructor must pass its first argument by reference (Fixit)'
// if not use reference 
// `i` is an argument to a parameter, thus, we'd need to use copy constructor
// to copy the argument, but to copy the argument, we'd need to call the copy
// constuctor, and so on idenfinitely! 
// so, compile refuse to compile this code

class T
{
        private:
                int n;
        public:
                T(T i);
};

int main()
{
        T a;
}
